//引入 "User" 的 Model
const {User} = require("../model/model.js");

//用户数据访问处理
const UserDao = {
  // 保存用户数据
  save(userinfo) { //{username:"xiaoming",password:"abc",email:"xiao@qq.com"}
    //根据 Model 创建"document(文档)"
    const user = new User(userinfo);
    //保存到集合中，并返回保存结果的 Promise 对象
    return user.save();
  },
  // 分页查询
  findByPage(page) {
    const pageSize = 5; // 默认每页显示5条数据
    return User.find({}).limit(pageSize).skip((page - 1) * pageSize);
  },
  // 查找用户数据
  find(condition) {
    return User.find(condition);
  },
  // 查找用户数据
  findById(id) {
    return User.findById(id);
  },
  //模糊查询用户的信息
  queryUser(username){
    console.log(username);
    //模糊查询参数 构建正则对象
    var query = new RegExp(username,'i');
    console.log(query);
    return User.find({'username':query});
  },

  // 修改用户数据，更新数据
  update(updateInfo){
    return User.update({_id:updateInfo._id}, { $set:updateInfo });
  },
   // 删除用户数据
  delete(id) {
    return User.deleteOne({_id:id});
  }
}

module.exports = UserDao;
